
package br.com.aeternu.controleatendimento.excel.turno;

import java.util.HashMap;
import java.util.Map;
import br.com.aeternu.controleatendimento.common.bean.CommonBean;

public class TurnoBean extends CommonBean implements Comparable<TurnoBean>
{

   private static final long serialVersionUID = -5595019166105846452L;
   private TurnoEnumerator turno;

   public TurnoBean()
   {
      super();

      this.turno = TurnoEnumerator.INDEFINIDO;
   }

   @Override
   public int compareTo(TurnoBean o)
   {
      return turno.getValue().compareTo(o.getTurno().getValue());
   }

   public TurnoEnumerator getTurno()
   {
      return turno;
   }

   public void setTurno(TurnoEnumerator turno)
   {
      this.turno = turno;
   }

   public enum TurnoEnumerator
   {
      INDEFINIDO(""), MATUTINO("Matutino"), VESPERTINO("Vespertino");

      private static final Map<String, TurnoEnumerator> typesByValue = new HashMap<String, TurnoEnumerator>();
      private String value;

      static
      {
         for (TurnoEnumerator turno : TurnoEnumerator.values())
         {
            typesByValue.put(turno.value, turno);
         }
      }

      private TurnoEnumerator(String value)
      {
         this.value = value;
      }

      public static TurnoEnumerator forValue(String value)
      {
         return typesByValue.get(value);
      }

      public static boolean isValid(String value)
      {
         return typesByValue.containsKey(value);
      }

      public String getValue()
      {
         return value;
      }
   }
}
